<?php 
/**
 * 分类控制器
 * @author 妮妮 <962611024@qq.com>
 */
class CategoryController extends AuthController{
	//定义一个model属性
	private $model;
	public function __init(){
		//继承父类这个__init这个方法
		parent::__init();
		//K就是调用扩展模型Common/Model文件夹里面的category方法
		$this->model=K('Category');
	}
    /**
     * 默认访问方法
     */
    public function index(){
    	if(IS_POST){
    		$sorts=Q('post.sort');
			foreach ($sorts as $cid => $sort) {
				$this->model->where("cid={$cid}")->update(array('sort'=>$sort));
			}
			$this->success('排序成功');
    	}
    	//获取所有数据
    	$data=$this->model->all();
		//树状结构    一定要在页面改变他循环的名称_name
		$data=Data::tree($data,'cname');
		//分配出去
		$this->assign('cate',$data);
		//载入模板
        $this->display(); 
    }
	
	/*
	 * 添加
	 * */
	public function add(){
		//当有用户提交时
		if(IS_POST){
			//如果验证失败，提示错误信息（$model->error会在模型create之后把错误压进去）
			if(!$this->model->addCate()) $this->error($this->model->error);
			$this->success('添加成功',U('index'));
		}
		//获得所有的类型
		$typeData=K('Type')->all();
		$this->assign('typeData',$typeData);
	    $this->display();
	}
	
	/*
	 * 添加子分类
	 * */
	public function addSon(){
		if(IS_POST){
			if(!$this->model->addCate()) $this->error($this->model->error);
			$this->success('添加子分类成功',U('index'));
		}
		//获得所有的类型
		$typeData=K('Type')->all();
		//p($typeData);
		$this->assign('typeData',$typeData);
		//载入模板
		$this->display();
	}
	
	/*
	 * 修改
	 * */
	public function edit(){
		if(IS_POST){
			if(!$this->model->editCate()) $this->error($this->model->error);
			$this->success('修改成功',U('index'));
		}
		
		//获得所有的类型
		$typeData=K('Type')->all();
		//p($typeData);
		$this->assign('typeData',$typeData);
		//获取旧数据
		$cid=Q('get.cid',0,'intval');
		$oldData=$this->model->where("cid={$cid}")->find();
		//p($oldData);
		//分配出去
		$this->assign('oldData',$oldData);
		
		
	    $this->display();
	}
	/*
	 * 删除
	 * */
	public function del(){
		$cid=Q('get.cid',0,'intval');
		
		$son=$this->model->where("pid={$cid}")->find();
		//如果有子集，请先删除子集
		if($son) $this->error('请先删除子集');
		//删除分类
		$this->model->where("cid={$cid}")->delete();
		$this->success('删除成功');
		
	}
	
 }
 
 
 
 
 
 
 
 
 
 
 

























 ?>